<?php
/**
 * Точка входа
 *
 * Файл на который перенаправляются все запросы к сайту, подключает ядро сайта и запускает приложение
 * 
 * @author Игорь Будасов aka Lord <igor.budasov@gmail.com>  
 */

// таймер для отработки времени загрузки страницы
require_once('tools/timer.php');
$pTimer->start(); 
   
// Включаем отображение ошибок
error_reporting(E_ALL);
ini_set('display_errors',1);

// Подключаем файл настроек
require 'application/system/config.php';
		 
// Создаем строку путей
$paths = implode(
	PATH_SEPARATOR,
	array(              
		$config['path']['library'],
		implode(PATH_SEPARATOR, $config['path']['models']),
		$config['path']['system']
	)
);

// Устанавливаем пути по которым происходит поиск подключаемых файлов, 
// это папка библиотек, моделей и системных файлов
set_include_path($paths);


// Подключение главного системного класса
require 'Bootstrap.php';

// Запуск приложения
$bootstrap = new Bootstrap();
$bootstrap->run($config);  

// считаем время выполнения страницы
$pTimer->stop(); 
if($config['debug']['on'] == true)
{
	// профайлер бд
	$db = Zend_Db_Table_Abstract::getDefaultAdapter();
	// показываем таймер
	echo '<hr/><br>Страниза сгенерирована за ' . $pTimer->get() . ' секунд'
	    . ' и ' . count($db->getProfiler()->getQueryProfiles()) . ' запросов, вот они:<br/><br/>';
	// вывод профайлера
	$html = "<ol style='font-size: 12px'>"; 
				foreach ($db->getProfiler()->getQueryProfiles() as $q) { 
					$params = preg_replace('#[\r\n]+#si', '', print_r($q->getQueryParams(), 1)); 
					$params = htmlspecialchars($params); 
					$html .= "<li>query: \"<b>".$q->getQuery()."</b>\"<br/>params: ".$params."</li><br/>"; 
				} 
	$html .= "</ol>";
	// показываем профайлер
	echo $html;
}
